#define _CRT_SECURE_NO_WARNINGS
//
//#include <iostream>
//#include <vector>
//
//using namespace std;
//
//vector<int> add(vector<int>& A, vector<int>& B)
//{
//	vector<int> C;
//
//	int tmp = 0;
//
//	for (int i = 0; i < A.size() || i < B.size() || tmp; i++)
//	{
//		if (i < A.size()) tmp += A[i];
//		if (i < B.size()) tmp += B[i];
//		C.push_back(tmp % 10);
//		tmp /= 10;
//	}
//
//	while (C.size() > 1 && C.back() == 0) C.pop_back();
//
//	return C;
//}
//
//int main()
//{
//	string a, b;
//	cin >> a >> b;
//	vector<int> A, B;
//
//	for (int i = a.size() - 1; i >= 0; i--) A.push_back(a[i] - '0');
//	for (int i = b.size() - 1; i >= 0; i--) B.push_back(b[i] - '0');
//
//	auto C = add(A, B);
//
//	for (int i = C.size() - 1; i >= 0; i--) cout << C[i];
//	cout << endl;
//
//	return 0;
//}

//
//
//#include <iostream>
//#include <vector>
//using namespace std;
//
//bool cmp(vector<int>& A, vector<int>& B)
//{
//    if (A.size() != B.size()) return A.size() > B.size();
//    for (int i = A.size() - 1; i >= 0; i--)
//    {
//        if (A[i] != B[i]) return A[i] > B[i];
//    }
//    return true;
//}
//
//vector<int> sub(vector<int>& A, vector<int>& B)
//{
//    vector<int> C;
//
//    int tmp = 0;
//    for (int i = 0; i < A.size(); i++)
//    {
//        tmp = A[i] - tmp;
//        if (i < B.size()) tmp -= B[i];
//        C.push_back((tmp + 10) % 10);
//        if (tmp < 0) tmp = 1;
//        else tmp = 0;
//    }
//
//    while (C.size() > 1 && C.back() == 0) C.pop_back();
//
//    return C;
//}
//
//int main()
//{
//    string a, b;
//    cin >> a >> b;
//    vector<int> A, B;
//
//    for (int i = a.size() - 1; i >= 0; i--) A.push_back(a[i] - '0');
//    for (int i = b.size() - 1; i >= 0; i--) B.push_back(b[i] - '0');
//
//    if (cmp(A, B))
//    {
//        auto C = sub(A, B);
//        for (int i = C.size() - 1; i >= 0; i--) cout << C[i];
//    }
//    else
//    {
//        auto C = sub(B, A);
//        cout << '-';
//        for (int i = C.size() - 1; i >= 0; i--) cout << C[i];
//    }
//
//    return 0;
//}


#include <iostream>
#include <vector>

using namespace std;

vector<int> mul(vector<int>& A, int b)
{
	vector<int> C;

	int tmp = 0;
	for (int i = 0; i < A.size() || tmp; i++)
	{
		if (i < A.size()) tmp += A[i] * b;
		C.push_back(tmp % 10);
		tmp /= 10;
	}

	while (C.size() > 1 && C.back() == 0) C.pop_back();

	return C;
}

int main()
{
	string a;
	int b;
	cin >> a >> b;
	vector<int> A;

	for (int i = a.size() - 1; i >= 0; i--) A.push_back(a[i] - '0');

	auto C = mul(A, b);

	for (int i = C.size() - 1; i >= 0; i--) cout << C[i];

	return 0;
}